package com.shujia.wyh.day05;

/*
        简单的说：方法就是完成特定功能的代码块
        在很多语言里面都有函数的定义
        函数在Java中被称为方法

        方法的语句定义格式：
            修饰符 返回值类型 方法名(参数类型 参数名1，参数类型 参数名2…) {
                        函数体;
                        return 返回值;
            }

       名词解释：
            修饰符：java中的修饰符有很多，后面上到面向对象的时候，我们详细讲解，目前只需要记住一个格式：public static
            返回值类型：就是执行完方法后，方法有一个返回值，这里返回值类型与返回的那个值的数据类型一致
            方法名：就是一个名称而已，为了方便我们去调用方法并且知道这个方法是干啥的，自己起名字，
                要符合标识符规则的名字，要遵循见名之意的原则。
            参数：
                1、形参
                    就是定义在方法上的参数名
                2、实参
                    将来实际调用方法传入的值或者变量
            参数类型：
                限定调用方法传入参数的数据类型
            参数名：
                就是一个变量名而已，用来接收将来实际传入实参的作用，符合标识符命名规则
            函数体：
                方法需要完成功能的代码，实现方法的主要逻辑
            return:
                结束方法，以及返回指定返回值类型的数据。
            返回值:
                数据被return返回出去，返回给调用者，这里的数据类型与返回值类型一致。



          注意：
            方法与方法之间是平级关系，不能嵌套定义
            方法只是定义，不调用的话不会执行
            两种使用带返回值类型方法：
                1、调用完方法后，用一样的类型接收方法返回的结果 （推荐第一种做法，灵活度更高）
                2、直接输出
            定义方法或者调用方法的时候参数与参数之间使用英文逗号隔开
            有返回值类型的方法，最后一点要有一个return,并且返回的值类型与方法定义的返回值类型一致。



 */
public class FunctionDemo1 {
    public static void main(String[] args) {
        //求两个数之和
        int a = 10;
        int b = 20;
        int c = 30;

        //方法与方法之间是平级关系，不能嵌套定义
//        public static int sum(int x,int y){
//            int sum2 = x+y;
//            return sum2;
//        }

        int result = sumNumber(a, b, c);
        System.out.println(result);
//        System.out.println(sumNumber(a,b));

    }

    public static int sumNumber(int x, int y, int z) {
        int sum = x + y + z;
        return sum;
    }
}
